//SDK
const QQMapWX = require('../../libs/qqmap-wx-jssdk')
//创建SDK对象并设置API接口密钥
const qqmapsdk = new QQMapWX({
  key: 'VR6BZ-LNCC3-BNJ3Y-OMWXI-FBGZJ-T7BDJ'
})
// pages/map/map.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    scale: 18,        //缩放
    longitude: 0,     //地图中心经纬
    latitude: 0,      //地图中心纬度
    markers: [],       //标记点
    searchText: '超市'      //搜索内容
  },
  //搜索
  searchMap() {
    this.getFood(this.data.longitude, this.data.latitude)
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    wx.getLocation({
      type: 'gcj02',
      success: res => {
        this.setData({
          longitude: res.longitude,
          latitude: res.latitude
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    this.mapCtx = wx.createMapContext('myMap')
  },
  /**
   * DIY Function
   */
  bannerTap: function () {
    wx.navigateTo({
      url: '/pages/coupon/coupon'
    })
  },
  regionChange: function (e) { //实时更新地图信息
    if (e.type === 'end') {
      this.mapCtx.getCenterLocation({
        success: res => {
          console.log("Test")
          console.log(res)
          this.getFood(res.longitude, res.latitude)
        }
      })
    }
  },
  controlTap: function (e) {
    this.mapCtx.moveToLocation()
  },
  getFood: function (longitude, latitude) {
    //搜索地图
    qqmapsdk.search({
      keyword: this.data.searchText,
      location: {
        longitude: longitude,
        latitude: latitude
      },
      success: res => {
        console.log(res)
        var markers = []
        //为附近美食餐厅设置标记点
        for (var i in res.data) {
          markers.push({
            iconPath: '/images/food.png',
            id: markers.length,
            latitude: res.data[i].location.lat,
            longitude: res.data[i].location.lng,
            width: 30,
            height: 30
          })
        }
        markers.push({
          iconPath: '/images/center.png',
            id: res.data.length,
            latitude: latitude,
            longitude: longitude,
            width: 15,
            height: 40
        })
        //更新地图数据
        this.setData({
          markers
        })
      },
      fail: res => {
        console.log(res)
      }
    })
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})